1. Field of the Invention
This invention generally relates to cartridge memory modules. More specifically, the invention relates to a tape cartridge having dual cartridge memory modules to provide memory redundancy, and to a method and apparatus to provide redundancy of cartridge memory information by the use of dual cartridge memory modules.
2. Background Art
Accessing data stored on linear tape is a function of data density and tape length. The longer the tape length, the longer it may take to access data on it. Current Linear Tape Open (LTO) products make use of a cartridge memory (CM) module to store tape directory and end of data (EOD) information.
In use, the CM modules are physically installed within tape cartridges, and the CM modules are addressed and modified by use of a contactless interface. Information read and updated in the CM module is accomplished from a transmitter incorporated into the tape drive. A list of standard or common CM memory contents, for example, is given in the LTO Tape Format Standard—ECMA 319 Data Interchange on 12, 7 mm 384 Track Magnetic Tape Cartridges—Ultrium 1 Format—Annex D LTO Cartridge Memory.
One type of information stored on CM modules is tape directory information, which is comprised of data that relate the physical position of key landmarks on the tape to the logical record found at that landmark. On LTO media, the physical data are conventionally addressed as longitudinal position (LPOS) (length wise access) by wrap position (traverse wise access). According to industry standards for generation 1 LTO products, there are 0.0072 meters per LPOS unit, each wrap is 580 meters (or 80555 LPOS unit in length), and there are forty-eight wraps across the width of the tape.
The cartridge memory technology used in the first generation LTO products (4 KB memory limitation) has imposed the limit on the number of tape directory entries to only 96 entries (two entries per wrap×48 wraps). Thus, the tape directory landmark information is limited to the mid-point and end-point of each wrap, resulting in 290 meters (580/2) meters between landmark information points. These landmark points, it may be noted, are referred to as wrap sections in the ECMA 319 Standard.
Table I below gives an example of tape directory information, and Table II below gives an example of information available at a wrap section.
TABLE ITape DirectoryFieldR/OOffsetBytesDescriptionPage IdRI02This field shall be set to (0103)indicating the Tape DirectoryPage.Page LengthRI22This field shall be set to (0610)which indicates the length ofthis Page.FID TapeO44The content of this field is notWrite Passdefined by this RCMA Standardand shall be ignored ininterchange.ReservedRU88These bytes shall be set to (00).Wrap Section 0RI1616As defined below.Wrap Section 1RI3216............WrapRI152016Section 94WrapRI153616Section 95
TABLE IIWrap SectionFieldBytesDescriptionPerData4This field shall specify the Data Set Identity ofWrapSet Idthe last Data Set written in this wrap section. IfSectionthis wrap section does not contain valid DataSets, then this field shall be set to (FFFFFFFF).Record4If this Wrap Section is valid, this field shallCountcontain the number of Records that are startedin the current Wrap Section. If the Data SetID of this Wrap Section is (FFFFFFFF) andhence this Wrap Section is invalid, the RecordCount field is not defined for interchangeFile4If this Wrap Section is valid, this field shallMarkcontain the number of File Marks that areCountwithin the current Wrap Section. If the DataSet ID of this Wrap Section is (FFFFFFFF)and hence this Wrap Section is invalid, theFile Mark Count field is not defined forinterchange.CRC4This field shall specify the CRC generated overbytes 0 to 11 of this section of this wrapsection.
The logical record found at each landmark is also recorded in each tape directory entry. Due to variances in host transfer record sizes and in compression ratios, the location of records is not linear on the tape. Because of this, locating to a random logical block requires a specialized algorithm to interpolate the physical position of that record from the two reference points (the mid-point landmark and the end-point landmark) of each wrap. Given the coarse nature of the tape directory (one every half wrap, or wrap section), the algorithm must approximate such that overshoots are avoided. Such approximations limit the effectiveness and speed of the search algorithm. In addition, the algorithm must take extreme caution where repositioning records (establishing a new sequence) to prevent encountering and referencing records that have become obsolete due to on-the-fly rewriting, which is permitted by industry standards.
End of data (EOD) information provides the physical position (LPOS and wrap) of the End-of-Data marker. Tables III and IV below give examples of end-of-data information.
TABLE IIIEOD InformationFieldR/OOffsetBytesDescriptionPage IdRI02This field shall be set to (0104)indicating the EODInformation Page.Page LengthRI22This field shall be set to (0040)which indicatesthe length of this page.Tape WriteRI44This field shall indicate thePass for lastcurrent value of the Tapewritten EODWrite Pass.Thread CountRI84This field shall specify the valueof the Thread Count field in theCartridge Status Informationwhen the EOD Data Set waswritten.Record CountRI126The field shall specify theat EODnumber of Records that arecontained on the tape betweenBOT and EOD.File MarkRI186This field shall specify theCount at EODnumber of File Marks that arecontained on the tape betweenthe BOT and EOD.EOD Data SetRI244This field shall specify the DataNumberSet number of the EOD DataSet.Wrap SectionRI284This field shall specify theNumber ofidentification of the wrap sectionEODin which EOD is contained.
TABLE IVFieldR/OOffsetBytesDescriptionValidity ofRI322This field shall indicate the currentEODstatus of the information held aboutEOD. This shall be set to(0000): The position of EOD isunknown.(0001): The information in this areaidentifies the location of EOD.(00002): A Backup was in progress,and so there is no EOD DataSet on tape. The EOD InformationPage shall specify details of a DataSet that is known to be at or beforethe current location on tape.(0003): A Backup has beenperformed, but the drive failed towrite the EOD Data Set to tapecorrectly. The EOD Information Pageshall contain details of the Data Setthat caused the Backup to fail.First CQRI342This field shall specify the AbsoluteSetCQ Set Number (CAN) of the firstNumberCQ Set in the EOD Data Set.PhysicalRI364This field shall specify the LPOSPositionvalue information at which EOD wasof EODwritten. This shall be a value for aLPOS Mark that lies within, orbefore, the DSS preceding the EODData Set.ReservedRI4020These bytes shall be set to all (00).CRCRI604This field shall specify the CRCgenerated over bytes 0 to 59 ofthis Page.
If a failure of a cartridge memory module occurs, accessing tape data is limited to linear (physical) searches, which may take a substantial length of time. For instance, on the first generation product, the time to locate to the last record on tape may take almost two hours (48 wraps×580 meters per wrap×4 meters per second (read velocity)=6960 seconds, which is nearly two hours). EOD information would also be limited to a linear search.